Machine-learned database recommendation model

ABSTRACT

A central database system trains a machine-learned model based on training data identifying characteristics of account holder entities, characteristics of account provider entities, and relationships between the account holder entities and account provider entities. For a target entity, the central database system then identifies a target set of account provider entities, and applies the trained machine-learned model to identify a subset of the target set of account provider entities. The identified subset of account provider entities are entities that, if recommended to the target entity, are most likely to result in an established relationship with the target entity. A recommendation is then generated for display to the target entity, the recommendation identifying the subset of account provider entities and including interface elements that, if selected by the target entity, cause a notification identifying the target entity to be sent to a corresponding account provider entity.

This disclosure relates generally to database systems, and morespecifically to training and applying machine-learned models in adatabase system.

BACKGROUND

Centralized database systems, such as employment management databasesystems, store large amount of data for the various entities associatedwith the database systems. In some embodiments, this data includesrelationships between the entities associated with the database system.Accordingly, centralized database systems may be able to identifypatterns and characteristics of the related entities, and thus may bepositioned to offer valuable insight into the conditions associated withthe establishment of such relationships.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system environment in which a centraldatabase system operates, according to one embodiment.

FIG. 2 is a data flow diagram illustrating the training and applicationof a machine-learned model, according to one embodiment.

FIG. 3 illustrates an example interface associated with the centraldatabase system, according to one embodiment.

FIG. 4 is a flowchart illustrating a process for training and applying amachine-learned model to recommend account provider entities to a targetentity, according to one embodiment.

The figures depict various embodiments for purposes of illustrationonly. One skilled in the art will readily recognize from the followingdiscussion that alternative embodiments of the structures and methodsillustrated herein may be employed without departing from the principlesdescribed herein.

DETAILED DESCRIPTION System Architecture

FIG. 1 is a block diagram of a system environment in which a centraldatabase system operates, in accordance with an embodiment. The systemenvironment 100 shown by FIG. 1 includes a central enrollment databasesystem 110, a network 120, one or more account holder entities 130, oneor more account provided entities 140, and a target entity 150. Thesystem environment 100 may have alternative configurations than shown inFIG. 1, including for example different, fewer, or additionalcomponents.

The account holder entities 130, the account provider entities 140, andthe target entity 150 communicate with each other and with the centraldatabase system 110 via one or more computing devices capable ofreceiving user input as well as transmitting and/or receiving data viathe network 120. Examples of computing devices include conventionalcomputer systems (such as a desktop or a laptop computer, a server, acloud computing device, and the like), client devices (such assmartphones, tablet computers, mobile devices, and the like), or anyother device having computer functionality. The devices of the accountholder entities 130, the account provider entities 140, and the targetentity 150 are configured to communicate with the central databasesystem 110 via the network 120, for example using a native applicationexecuted by the devices or through an application programming interface(API) running on a native operating system of the devices, such as IOS®or ANDROID™. In another example, the devices of the account holderentities 130, the account provider entities 140, and the target entity150 are configured to communicate with the central database system 110via an API running on the central database system.

It should be noted that when reference is made to an account holderentity 130, an account provider entity 140, or the target entity 150performing an action within the environment 100 of FIG. 1, in practiceit may be a device of the account holder entity, the account providerentity, or the target entity (respectively) that is performing theaction, for instance at the direction of the account holder entity, theaccount provider entity, or the target entity.

Account holder entities 130 can include any entities associated withaccounts of the central database system 110. For instance, an accountholder entity 130 may be an individual, an employee, an employer, arepresentative of a company or organization, and the like. As oneexample, an employer of 100 employees may be associated with an employeraccount within the central database system 110, and may provide employeeinformation (such as name, tile, biographic information, geographicinformation, salary, benefits, and the like) for each employee to thecentral database system 110. The central database system 110, in turn,may provision an account through the central database system for eachemployee, and thus each employee may also be an account holder entity130.

Account provider entities 140 can include any entity that enables thecreation of a user account outside of the context of the centraldatabase system 110. For instance, an account provider entity 140 may bea lawyer or law firm, an accountant or accounting firm, a component ormaterials supplier, an advisor, a venture capital firm or bankingorganization, a technology partner (such as an integration or ITprovider), or any other suitable service or product provider. In someembodiments, each account provider entity is associated with an accountof the central database system 110. As used herein, “the creation of auser account outside of the context of the central database system 110”can refer to the creation of a digital account through an online portalor computer system associated with an account provider entity 140, canrefer to a non-digital account with an account provider entity (such asan attorney-client engagement, a brokerage account, a businessrelationship, an execution of a contract or other agreement, and thelike), and can refer to the establishment of any relationship orassociation between an account provider entity and another entity.

The target entity 150 is an account holder entity for which arecommendation of one or more account provider entities 140 is beingmade. For example, the target entity 150 can be an organization,company, individual, or the like. The central database system 110 canselect the target entity 150 (as described below), or the target entitycan be identified to the central database system, for instance inresponse to a request from an individual associated with the targetentity 150.

The central database system 110, the account holder entities 130, andthe account provider entities 140 are configured to communicate via thenetwork 120, which may comprise any combination of local area and/orwide area networks, using wired and/or wireless communication systems.In one embodiment, the network 120 uses standard communicationstechnologies and/or protocols. For example, the network 120 includescommunication links using technologies such as Ethernet, 802.11,worldwide interoperability for microwave access (WiMAX), 3G, 4G, codedivision multiple access (CDMA), digital subscriber line (DSL), etc.Examples of networking protocols used for communicating via the network120 include multiprotocol label switching (MPLS), transmission controlprotocol/Internet protocol (TCP/IP), hypertext transport protocol(HTTP), simple mail transfer protocol (SMTP), and file transfer protocol(FTP). Data exchanged over the network 120 may be represented using anysuitable format, such as hypertext markup language (HTML) or extensiblemarkup language (XML). In some embodiments, all or some of thecommunication links of the network 120 may be encrypted using anysuitable technique or techniques.

The central database system 110 is configured to receive and storevarious information associated with one or more entities, such as theaccount holder entities 130 and the account provider entities 140. Asdescribed below, the central database system 110 is able to train andapply a machine-learned model to identify a subset of account providerentities from the set of account provider entities 140 that, ifrecommended to an account holder entity 130 (“target entity”hereinafter), are most likely to result in the creation or establishmentof account with the target entity. The central database system 110 isable to leverage information stored by the central database systemassociated with the account holder entities 130 and the account providerentities in order to train the machine-learned model, beneficiallyenabling the central database system to generate recommendations thatare more relevant to a target entity than the account holder entities130 or the account provider entities 140 are individually able togenerate.

In the embodiment of FIG. 1, the central database system 110 includes anentity database 155, a training information database 160, amachine-learned model 165, a training engine 170, a recommendationengine 175, and an interface engine. It should be noted that in otherembodiments, the central database system 110 can include fewer,additional, or different components that those illustrated herein. Inaddition, in the embodiment of FIG. 1, the central database system 110is associated with an entity (such as a company or organization)different from the account holder entities 130 and the account providerentities 140. Accordingly, the central database system 110 includeshardware (such as servers, networking equipment, databases or otherstorage devices, data center systems, and the like) distinct (and insome embodiments, physically remotely from) the devices associated withthe account holder entities 130 and the account provider entities 140.

The entity database 155 is configured to store information associatedwith the account holder entities 130 and the account provider entities140. In some embodiments, the information stored in the entity database155 is information gathered from the account holder entities 130 and/orthe account provider entities 140 as these entities are establishingaccounts with the central database system 110. For instance, the centraldatabase system 110 can be an enterprise software provider that provideshuman resources software to employers for use with employees. In thisexample, the employer may provide information describing characteristicsof the employer and information describing characteristics of each ofthe employees to the central database system 110 during the course ofprovisioning accounts for the employees with the central databasesystem. Likewise, account provider entities 140, such as manufacturers,law firms, accounting firms, and the like can provide informationdescribing the account provider entities, employees of the accountprovider entities, and customers of the account provider entities to thecentral database system 110 during the course of provisioning accountsfor the employees and customers with the central database system. Inother embodiments, information associated with the account holderentities 130 and account provider entities 140 can be provided to thecentral database system 110 for storage in the entity database 155 viaany other suitable source or medium.

Examples of information associated an account holder entity 130 storedby the entity database 155 can include but are not limited to: a type ofthe account holder entity (e.g., a company, an educational institution,a professional or charitable association, an employer, an employee, agovernment organization, and the like), an age of the account holderentity (e.g., how long the entity has been in business, beenestablished, etc.), a number of individuals or headcount associated withthe account holder entity, an industry or focus associated with theaccount holder entity, a filing city or state associated with theaccount holder entity (e.g., where the account holder entity filestaxes), a tax status of the account holder entity (e.g., for-profitbusiness, non-profit organization, etc.), a state of incorporation orregistration of the account holder entity, cities or states in which theaccount holder entity is present (e.g., does business, has offices,etc.), cities or states in which the account holder entity has employeesor members, addresses associated with the account holder entity (e.g.,addresses of offices of the account holder entity), software used by theaccount holder entity, revenue or profits of the account holder entity,geographic locations of customers of the account holder entity, accountprovider entities associated with the account holder entity, or anyother suitable characteristic of the account holder entity.

Examples of information associated an account provider entity 140 storedby the entity database 155 can include but are not limited to: a type ofthe account provider entity (e.g., a company, a law firm, an accountfirm, an educational institution, a supplier, a manufacturer, adistributor, a venture capital organization, a banking or otherfinancial institution, a technology provider or partner, and the like),an age of the account provider entity (e.g., how long the entity hasbeen in business, been established, etc.), a number of individuals orheadcount associated with the account provider entity, an average numberof individuals or headcount associated with account holder entitiesassociated with the account provider entity, an industry or focusassociated with the account provider entity, an industry or focusassociated with account holder entities associated with the accountprovider entity, a filing city or state associated with the accountprovider entity and associated with any account holder entitiesassociated with the account provider entity, addresses associated withthe account provider entity (e.g., addresses of offices of the accountprovider entity), a tax status of any account holder entities associatedwith the account provider entity, a state of incorporation orregistration of the account provider entity or with any account holderentities associated with the account provider entity, cities or statesin which the account provider entity is present or has offices, ageographic disbursement of account holder entities associated with theaccount provider entity, software used by the account provider entity,revenue or profits of account holder entities associated with theaccount provider entity, an identity or any other characteristics ofaccount holder entities associated with the account provider entity, taxor finance issue expertise of the account provider entity, complianceexpertise of the account provider entity, an industry expertise of theaccount provider entity, fundraising or selling expertise of the accountprovider entity, non-profit expertise and capabilities of the accountprovider entity (e.g., grant expertise, R&D expertise, and the like),services offered by the account provider entity, a service typeassociated with the account provider entity (e.g., an automated service,personal/hand-holding service, and the like), a current number ofaccount holder entities associated with the account provider entity, anew client status of the account provider entity (whether the accountprovider entity is looking for new clients, how new clients the accountprovider entity is willing to accept, etc.), or any other suitablecharacteristic of the account holder entity.

The training information database 160 includes a set of traininginformation used to train a machine-learned model. In some embodiments,the set of training information includes historical information storedby the entity database 155 associated with a set of account holderentities 130 and a set of account provider entities 140, and historicalinformation representative of relationships between the two sets ofentities. For instance, the set of training information can includemultiple entries, with each entry including information describingcharacteristics of an account holder entity 130, information describingcharacteristics of an account provider entity 140 with which the accountholder entity has established an account, and information describing therelationship between the account provider entity and the account holderentity (such as a type of the account, when the account was established,the like).

The machine-learned model 165 is a model that is trained by the trainingengine 170 using the set of training information stored in the traininginformation database 160. The training engine 170 can train themachine-learned model 165 initially based on the set of traininginformation, and can retrain the machine-learned model when the set oftraining information is updated (e.g., new information is added, one ormore characteristics of an account holder entity 130 or an accountprovider entity has changed, and the like). The machine-learned model165 can be retrained by the training engine 170 periodically, after thepassage of a threshold amount of time, after the occurrence of atriggering event, at the request of a user or other entity associatedwith the central database system 110, and the like.

The training engine 170 can implement one or more machine learningtechniques to train the machine-learned model 165. For instance, themachine-learned model can include one or more models, including but notlimited to a linear support vector machine (linear SVM), boosting forother algorithms (e.g., AdaBoost), neural networks, logistic regression,naïve Bayes classifiers, memory-based learning techniques, random forestclassifiers, bagged trees, decision trees, boosted trees, boostedstumps, a supervised or unsupervised learning algorithm, or any suitablecombination thereof.

The machine-learned model 165 is trained based on the set of traininginformation in order to identify one or more account provider entities140 that, if recommended to an account holder entity 130, are mostlikely to result in an established account or other relationship withthe account holder entity. In some embodiments, the machine-learnedmodel is trained to identify patterns or correlations betweencharacteristics of account holder entities 130 in the set of traininginformation and characteristics of associated account provider entities140 in the set of training information. In these embodiments, based onthese identified patterns and correlations, the machine-learned modelcan identify, based on characteristics of a target entity, one or moreaccount provider entities 140 associated with characteristics correlatedto the characteristics of the target entity.

FIG. 2 is a data flow diagram illustrating the training and applicationof a machine-learned model, according to one embodiment. In theembodiment of FIG. 2, the machine-learned model 165 is trained using atraining set of information 200, including account holder information210 (e.g., information representative of one or more account holderentities), account provider information 220 (e.g., informationrepresentative of one or more account provider entities), and accountholder/provider relationship information 230 (e.g., informationdescribing relationships between the account holders and the accountproviders). The machine-learned model 165 receives informationassociated with a target entity 150 and information associated withcandidate account providers 250 (e.g., a target set of account providerentities), and identifies a set of recommendations 260 including asubset of the candidate account providers 250 that, when recommended tothe target entity 150, are most likely to result in the establishment ofan account with the target entity.

The recommendation engine 175 identifies a target entity 150 to whichone or more account provider entities 140 are to be recommended. In someembodiments, the target entity 150 comprises an entity that does nothave a relationship with a particular type of account provider entity.For instance, a company that does not have an account with an IT serviceprovider can be selected, and one or more IT server providers can berecommended to the company. In some embodiments, the target entity 150can be an entity that is requesting a recommendation to one or moreaccount provider entities 140. In some embodiments, the recommendationengine 175 can identify the target entity 150 based on characteristicsof the target entity (e.g., when the target entity grows to a certainheadcount, the target entity can be selected so that a law firm can berecommended), based on a time or date (e.g., a target entity can beselected so that an accounting firm can be recommended within two monthsof tax day), based on relationships established by similar entities withaccount provider entities (e.g., if several companies in a particularindustry within a particular geographic area are establishingrelationships with manufacturers within the same industry, a companywithin the particular industry and particular geographic area can beselected as the target entity), or based on any other suitable criteria.

The recommendation engine 175 then identifies a set of characteristicsassociated with the target entity 150. Examples of the identified set ofcharacteristics include a size of the target entity 150, an industry ofthe target entity, a filing state of the target entity, or any othersuitable characteristics (such as any of the characteristics describedabove with regards to the account holder entities 130 or the accountprovider entities 140 and stored within the entity database 155).

The recommendation engine 175 identifies a target set of accountprovider entities, among which a subset will be selected forrecommendation to the target entity 150. The target set of accountprovider entities are selected from among the account provider entities140. In some embodiments, the target set of account provider entitiescomprise entities that have one or more characteristics in common withthe target entity 150, and/or are selected based on characteristics ofthe target entity. For instance, the target set of account providerentities can be entities located in a same geographic region or state asthe target entity 150, entities that operate in a same industry as thetarget entity, and the like. In some embodiments, the target set ofaccount provider entities comprise all or a subset of the accountprovider entities 140 associated with a particular entity type. Forinstance, if the target entity is determined to not have a relationshipor account with an email provider, the target set of account providerentities can be all email providers within the account provider entities140. In some embodiments, the target set of account provider entitiescomprise entities within the account provider entities 140 that areseeking to accept new clients or customers. In other embodiments, thetarget set of account provider entities includes all of the accountprovider entities 140 (for instance, in embodiments where all of theaccount provider entities 140 are account provider entities of aparticular type, such as enterprise software providers or accountingfirms). In practice, any combination of the above factors or any othersuitable factors may be used to select the target set of accountprovider entities.

The recommendation engine 175 identifies a set of characteristicsassociated with each of the target set of account provider entities.Example characteristics in the identified sets of characteristicsinclude a size of the account provider entity, an industry of theaccount provider entity, a filing state of the account provider entity,or any other suitable characteristics (such as any of thecharacteristics described above with regards to the account holderentities 130 or the account provider entities 140 and stored within theentity database 155).

The recommendation engine 175 applies the machine-learned model 165 tothe identified set of characteristics associated with the target entity150 and the identified sets of characteristics associated with thetarget set of account provider entities, and the machine-learned modeloutputs a subset of the target set of account provider entities torecommend to the target entity. As described above, the subset of thetarget set of account provider entities are the account providerentities that, when recommended to the target entity 150, are mostlikely to result in an established account or other relationship orassociation with the account holder entity.

The subset of the target set of account provider entities output by themachine-learned model 165 may include the account provider entity mostlikely to result in an established account or relationship with thetarget entity when recommended to the target entity. The subset of thetarget set of account provider entities may also include all accountprovider entities within the target set of account provider entitiesthat are associated with an above-threshold likelihood to, whenrecommended to the target entity, result in an established account orrelationship with the target entity. The subset of the target set ofaccount provider entities may also include a threshold number of thetarget set of account provider entities that are most likely to resultin an established account or relationship with the target entity.

In some embodiments, the machine-learned model 165 is configured torecommend a first account provider entity that services account holderentities associated with an average headcount that is within a thresholdheadcount of a target entity over a second account provider entity thatservices account holder entities with an average headcount more than athreshold headcount away from the target entity. For instance, for atarget entity with a headcount of 100 employees, the machine-learnedmodel 165 can recommend a first account provider entity with clientsthat have an average headcount of 110 over a second account providerentity with clients that have an average headcount of 60 or 180.

In some embodiments, the machine-learned model 165 is configured torecommend a first account provider entity that services a thresholdnumber or threshold percentage of account holder entities associatedwith a same filing state as the target entity over a second accountprovider entity that services less than a threshold number or thresholdpercentage of account holder entities associated with the same filingstate. For instance, for a target entity with a filing state ofCalifornia, the machine-learned model 165 can recommend a first accountprovider where 60% of the first account provider's clients file inCalifornia over a second account provider entity where 20% of the secondaccount provider's clients file in California.

In some embodiments, the machine-learned model 165 is configured torecommend a first account provider entity that services a thresholdnumber or threshold percentage of account holder entities associatedwith a same industry as the target entity over a second account providerentity that services less than a threshold number or thresholdpercentage of account holder entities associated with the same industry.For instance, for a target entity associated with roboticsmanufacturing, the machine-learned model 165 can recommend a firstaccount provider where 90% of the first account provider's clients arein the robotics manufacturing industry over a second account providerentity where 40% of the second account provider's clients are in therobotics manufacturing industry.

In some embodiments, the machine-learned model 165 is configured toidentify account provider entities based on any suitable factors. Forinstance, the machine-learned model 165 may be more likely to selectaccount provider entities based on a capacity of the account providerentities (e.g., the number of account holder entities 130 associatedwith each account provider entity, the number of new account holderentities an account provider entity is willing to take on, etc.)Likewise, the machine-learned model 165 may be more likely to selectaccount provider entities that specialize in an unusual, uncommon, orrare specialty (for instance, if only one, a few, or less than athreshold number of account provider entities associated with thecentral database system 110 are associated with the specialty).

In some embodiments, the machine-learned model 165 is configured toidentify account provider entities based on a number of percentage ofaccount holder entities that end relationships or accounts with eachaccount provider entity, based on a maximum number of account holderentities that each account provider entity can service or have arelationship with, a number of counter or reciprocal referrals eachaccount provider entity has made (e.g., a number of entities that eachaccount provider entity has recommended the central database system 100to), and the like.

It should be emphasized that the machine-learned model 165 can beconfigured to identify account provider entities based on anycharacteristic of the target entity 150, any characteristic of anaccount provider entity, any combination of the factors orcharacteristics described herein, or any other suitable characteristic.

The interface engine 180 coordinates communications between the entitiesof FIG. 1. For instance, the interface engine 180 receives informationdescribing characteristics of the account holder entities 130, theaccount provider entities 140, and the target entity 150 (for instance,while onboarding and provisioning accounts within the central databasesystem 110 for these entities), and stores the received information inthe entity database 155. Likewise, the interface engine 180 can providerecommendations for the identified subset of account provider entitiesto the target entity 150. In some embodiments, the interface engine 180generates and causes display of one or more graphic user interfaces(GUIs), for instance for display by a device of an account holder entity130, a device of an account provider entity 140, and/or a device of thetarget entity 150.

Upon identifying a subset of the target set of account provider entitiesto recommend to the target entity 150, the interface engine 180 causesdisplay of a notification within an interface displayed by a deviceassociated with the target entity. In some embodiments, the interfacedisplayed by the device associated with the target entity 150 includes aGUI displayed by an application executed by the device and associatedwith the central database system 110. In such embodiments, thenotification can identify the subset of account provider entities alongwith text indicating that a relationship or account with one or more ofthe subset of account provider entities is recommended by the centraldatabase system 110. In some embodiments, the interface includes one ormore interface elements (for instance, one interface elementcorresponding to each entity within the subset of account providerentities) that, when interacted with, causes a message or notificationidentifying the target entity to be sent to the account provider. Insome embodiments, instead of a notification displayed within aninterface of an application associated with the central database system110, the recommended subset of account provider entities can be emailed,texted, or otherwise communicated to the target entity 150 for displaywithin a different interface by a device of the target entity.

FIG. 3 illustrates an example interface associated with the centraldatabase system, according to one embodiment. The user interface 300 isdisplayed by a device of the target entity 150. At the top of the userinterface 300 is recommendation text 310 that communicates to the targetentity that 1) the central database system 100 recognized that thetarget entity is not associated with a component manufacture, 2) thatthe central database system identified candidate componentmanufacturers, and 3) asks the target entity if they would like arecommendation. The recommended account provider entities 320 aredisplayed within the user interface 300, in this case the componentmanufacturers “Acme Inc.”, “Baltic & Sons”, and “Calvin's Co.” The userinterface 300 further includes acceptance interface elements 330 that,when interacted with, cause a message or notification identifying thetarget entity 150 to be sent to the corresponding componentmanufacturer. The user interface 300 further includes message interfaceelements 340 that enable the target entity 150 to customize the messageor notification sent to the component manufacturer (either a defaultreferral message, or a target entity-created custom referral message).

When the target entity 150 accepts a recommendation (e.g., by selectingthe interface element associated with a recommendation, when the targetentity requests a referral, and the like), a message or notificationidentifying the target entity is sent for display by a device associatedwith the account provider entity associated with the acceptedrecommendation. The message or notification can include introductorytext explaining that the target entity accepted a recommendation to theaccount provider entity associated with the accepted recommendation. Forexample, the message can say “Hello, the potential client XYZ hasexpressed interest in establishing an account with you. Would you likean introduction?”

In some embodiments, the account provider entity device displays themessage or notification within an application interface corresponding tothe central database system 110, while in other embodiments, the messageis displayed as an email, a pop up window, a text message, or any othersuitable form. The account provider entity associated with the acceptedrecommendation can, in response to accepting the referral (e.g., byselecting an interface element requesting to be introduced to the targetentity 150, by sending a message to the target entity, and the like),initiate communication with the target entity. In some embodiments, thecommunication occurs via the central database system 100 (for instance,within an application corresponding to the central database system),while in other embodiments the communication occurs outside of thecontext of the central database system (in which case, either the targetentity 150 or the account provider entity associated with the acceptedrecommendation can inform the central database system of the status ofthe recommendation). In some embodiments, in response to either theestablishment or failure of an establishment of a relationship oraccount between the target entity 150 and the provider entity associatedwith the accepted recommendation, the central database system 100 canupdate the set of training information stored within the traininginformation database 160, and the training engine 170 can retrain themachine-learned model 165 based on the updated set of traininginformation.

FIG. 4 is a flowchart illustrating a process for training and applying amachine-learned model to recommend account provider entities to a targetentity, according to one embodiment. It should be noted that in otherembodiments, the process illustrated by FIG. 4 can include fewer,additional, or different steps than those described herein.

A training set of information is accessed 410 describing characteristicsof account holder entities, account provider entities, and associatedrelationships between the account holder entities and account providerentities. In some embodiments, each account holder entity is associatedwith at least a first account provided by a central database system, andare associated with at least a second account provided by one or more ofthe account provider entities.

A machine-learned model is trained 420 using the accessed training setof information to identify account provider entities to recommend toprospective account holder entities. In particular, the machine-learnedmodel can be trained to identify account provider entities that, ifrecommended to a particular entity, are most likely to result in anaccount being established between the particular entity and the accountprovider entities. As noted above, the machine-learned model can be aneural network, a Bayes classifier, a linear support vector machine, andthe like.

The central database system identifies 430 a target entity associatedwith the central database system, and identifies 440 a target set ofaccount provider entities based on characteristics of the identifiedtarget entity. For instance, the target entity can be an entityassociated with an account of the central database system, but notassociated with a particular type of account offered by the target setof account provider entities. Likewise, the identified target set ofaccount provider entities can be account provider entities associatedwith a geographic region associated with the target entity, an industryassociated with the target entity, and the like.

The central database system applies 450 the machine-learned model tocharacteristics of the target entity and characteristics of the targetset of account provider entities to identify a subset of the accountprovider entities. The target entity is notified 460 of the identifiedsubset of the account provider entities, for instance within anotification generated for display within a recommendation interface.The notification can include, for each of the subset of account providerentities, an interface element that, when selected, generates anotification identifying the target entity for display to thecorresponding account provider entity.

ADDITIONAL CONSIDERATIONS

The foregoing description of the embodiments has been presented for thepurpose of illustration; it is not intended to be exhaustive or to limitthe patent rights to the precise forms disclosed. Persons skilled in therelevant art can appreciate that many modifications and variations arepossible in light of the above disclosure.

Some portions of this description describe the embodiments in terms ofalgorithms and symbolic representations of operations on information.These algorithmic descriptions and representations are commonly used bythose skilled in the data processing arts to convey the substance oftheir work effectively to others skilled in the art. These operations,while described functionally, computationally, or logically, areunderstood to be implemented by computer programs or equivalentelectrical circuits, microcode, or the like. Furthermore, it has alsoproven convenient at times, to refer to these arrangements of operationsas modules, without loss of generality. The described operations andtheir associated modules may be embodied in software, firmware,hardware, or any combinations thereof.

Any of the steps, operations, or processes described herein may beperformed or implemented with one or more hardware or software modules,alone or in combination with other devices. In one embodiment, asoftware module is implemented with a computer program productcomprising a computer-readable medium containing computer program code,which can be executed by a computer processor for performing any or allof the steps, operations, or processes described.

Embodiments may also relate to an apparatus for performing theoperations herein. This apparatus may be specially constructed for therequired purposes, and/or it may comprise a general-purpose computingdevice selectively activated or reconfigured by a computer programstored in the computer. Such a computer program may be stored in anon-transitory, tangible computer readable storage medium, or any typeof media suitable for storing electronic instructions, which may becoupled to a computer system bus. Furthermore, any computing systemsreferred to in the specification may include a single processor or maybe architectures employing multiple processor designs for increasedcomputing capability.

Embodiments may also relate to a product that is produced by a computingprocess described herein. Such a product may comprise informationresulting from a computing process, where the information is stored on anon-transitory, tangible computer readable storage medium and mayinclude any embodiment of a computer program product or other datacombination described herein.

Finally, the language used in the specification has been principallyselected for readability and instructional purposes, and it may not havebeen selected to delineate or circumscribe the patent rights. It istherefore intended that the scope of the patent rights be limited not bythis detailed description, but rather by any claims that issue on anapplication based hereon. Accordingly, the disclosure of the embodimentsis intended to be illustrative, but not limiting, of the scope of thepatent rights, which is set forth in the following claims.

What is claimed is:
 1. A central database system comprising: a hardwareprocessor; and a non-transitory computer-readable storage medium storingexecutable instructions that, when executed by the hardware processor,cause the hardware processor to perform steps comprising: accessing atraining set of information describing characteristics of each of afirst set of account holder entities each associated with one or morecentral database system accounts, characteristics of each of a secondset of account provider entities, and relationships between entities inthe first set of account holder entities and the second set of accountprovider entities; training a machine-learned model using the accessedtraining set of information, the machine-learned model configured toidentify one or more account provider entities that, if recommended toan account holder entity, are most likely to result in an establishedaccount with the account holder entity; identifying a target entityassociated with one or more central database system accounts, thecentral database system storing information describing a set ofcharacteristics associated with the target entity in a first databasetable; identifying a target set of account provider entities based onthe set of characteristics associated with the target entity, thecentral database system storing, for each of the target set of accountprovider entities, information describing a set of characteristicsassociated with the account provider entity in a second database table;applying the trained machine-learned model to the set of characteristicsassociated with the target entity and the sets of characteristicsassociated with the target set of account provider entities to identifya subset of the account provider entities to recommend to the targetentity; and causing display of a notification within an interfacedisplayed by a device associated with the target entity, thenotification identifying the identified subset of account providers andincluding, for each account provider of the identified subset of accountproviders, an interface element that, when selected, causes anotification identifying the target entity to be sent to the accountprovider.
 2. The central database system of claim 1, wherein a firstentity in the first set of account holder entities is associated with asecond account provided by a second entity in the second set of accountprovided entities, the second account different from the one or morecentral database system accounts associated with the first entity, andthe second entity different from the central database system.
 3. Thecentral database system of claim 1, wherein identifying the targetentity comprises identifying an entity that does not have a relationshipwith a particular type of account provider entity.
 4. The centraldatabase system of claim 3, wherein identifying the target set ofaccount provider entities comprises identifying account providerentities associated with the particular type of account.
 5. The centraldatabase system of claim 1, wherein the target set of account providerentities comprises all account provider entities determined by themachine-learned model to be associated with an above-thresholdlikelihood to, when recommended to the target entity, result in anestablish account with the target entity.
 6. The central database systemof claim 1, wherein the target set of account provider entitiescomprises a threshold number of account provider entities determined bythe machine-learned model to be most likely to, when recommended to thetarget entity, result in an establish account with the target entity. 7.The central database system of claim 1, wherein the target set ofaccount providers comprise a subset of all account providers associatedwith the central database system that are located within a same state orcity as the target entity.
 8. The central database system of claim 1,wherein the machine-learned model recommends account provider entitiesthat service entities with an average headcount within a thresholdheadcount of the target entity over account provider entities thatservice entities with an average headcount more than a thresholdheadcount away from the target entity.
 9. The central database system ofclaim 1, wherein the machine-learned model recommends account providerentities that service a threshold number of entities associated with asame filing state as the target entity over account provider entitiesthat service less than the threshold number of entities associated withthe same filing state.
 10. The central database system of claim 1,wherein the machine-learned model recommends account provider entitiesthat service a threshold number of entities associated with a sameindustry as the target entity over account provider entities thatservice less than the threshold number of entities associated with thesame industry.
 11. A method comprising: accessing, by a central databasesystem, a training set of information describing characteristics of eachof a first set of account holder entities each associated with one ormore central database system accounts, characteristics of each of asecond set of account provider entities, and relationships betweenentities in the first set of account holder entities and the second setof account provider entities; training, by the central database system,a machine-learned model using the accessed training set of information,the machine-learned model configured to identify one or more accountprovider entities that, if recommended to an account holder entity, aremost likely to result in an established account with the account holderentity; identifying, by the central database system, a target entityassociated with one or more central database system accounts, thecentral database system storing information describing a set ofcharacteristics associated with the target entity in a first databasetable; identifying, by the central database system, a target set ofaccount provider entities based on the set of characteristics associatedwith the target entity, the central database system storing, for each ofthe target set of account provider entities, information describing aset of characteristics associated with the account provider entity in asecond database table; applying, by the central database system, thetrained machine-learned model to the set of characteristics associatedwith the target entity and the sets of characteristics associated withthe target set of account provider entities to identify a subset of theaccount provider entities to recommend to the target entity; and causingdisplay, by the central database system, of a notification within aninterface displayed by a device associated with the target entity, thenotification identifying the identified subset of account providers andincluding, for each account provider of the identified subset of accountproviders, an interface element that, when selected, causes anotification identifying the target entity to be sent to the accountprovider.
 12. The method of claim 11, wherein a first entity in thefirst set of account holder entities is associated with a second accountprovided by a second entity in the second set of account providedentities, the second account different from the one or more centraldatabase system accounts associated with the first entity, and thesecond entity different from the central database system.
 13. The methodof claim 11, wherein identifying the target entity comprises identifyingan entity that does not have a relationship with a particular type ofaccount provider entity.
 14. The method of claim 13, wherein identifyingthe target set of account provider entities comprises identifyingaccount provider entities associated with the particular type ofaccount.
 15. The method of claim 11, wherein the target set of accountprovider entities comprises all account provider entities determined bythe machine-learned model to be associated with an above-thresholdlikelihood to, when recommended to the target entity, result in anestablish account with the target entity.
 16. The method of claim 11,wherein the target set of account provider entities comprises athreshold number of account provider entities determined by themachine-learned model to be most likely to, when recommended to thetarget entity, result in an establish account with the target entity.17. The method of claim 11, wherein the target set of account providerscomprise a subset of all account providers associated with the centraldatabase system that are located within a same state or city as thetarget entity.
 18. The method of claim 11, wherein the machine-learnedmodel recommends account provider entities that service entities with anaverage headcount within a threshold headcount of the target entity overaccount provider entities that service entities with an averageheadcount more than a threshold headcount away from the target entity.19. The method of claim 11, wherein the machine-learned model recommendsaccount provider entities that service a threshold number of entitiesassociated with a same filing state as the target entity over accountprovider entities that service less than the threshold number ofentities associated with the same filing state.
 20. The method of claim11, wherein the machine-learned model recommends account providerentities that service a threshold number of entities associated with asame industry as the target entity over account provider entities thatservice less than the threshold number of entities associated with thesame industry.